package com.starhub.application.rag.dto;

import java.util.List;

import com.starhub.application.collection.dto.MetaDataLinkDto;

import dev.langchain4j.data.segment.TextSegmentTransformer;
import lombok.Builder;
import lombok.Data;

/**
 * 向量dto
 * @version: V1.0
 * @author: liuhf
 * @time 2025-06-05
 */
@Builder
@Data
public class EmbeddingDto {

    private String itemId;

    private String collectionId;

    private String baseId;

    private String content;

    private String collectionIdentifier;

    private String chartType;

    private String vectorModel;

    private Integer dimension;

    private String baseType;

    private Integer splitStrategy;

    private Integer maxParagraphSize;

    private Integer maxOverlapSize;
    
    /*
     * 这里是分段处理的回调，现在利用这里做分段数据保存，支持单独传入一个TextSegmentTransformer对象来实现其他的分段执行逻辑
     */
    TextSegmentTransformer textSegmentTransformer;

    private List<MetaDataLinkDto> metaDataLinks;
}
